ViewPoint-Oriented Software Development: Tool Support for Integrating Multiple Perspectives by Distributed Graph Transformation

نویسندگان

  • Michael Goedicke
  • Bettina Enders
  • Torsten Meyer
  • Gabriele Taentzer
چکیده

Co-operative development of distributed software systems involves to address the multiple perspectives problem: many stakeholders with diverse domain knowledge and differing development strategies collaborate to construct heterogeneous development artifacts using different representation schemes. The ViewPoints framework has been developed for organizing multiple stakeholders, the development processes and notations they use, and the partial specifications they produce. In this contribution we present a tool environment supporting ViewPoint-oriented software development based on a formalization by distributed graph transformation. Introduction and Related Work In system design the various development stages are visited more than once and quite different notations and process models need to be integrated in order to satisfy the requirements of the different stakeholders’ views and their processes. It is therefore highly desirable to provide flexible conceptual means and related tool support for representing the various cooperating stakeholders’ views and process models. In this contribution we use the ViewPoints framework to represent such views and processes. In addition the ViewPoints framework involves to tolerate inconsistent information in related ViewPoints until it seems necessary or appropriate to check and (re)establish consistency -at least in some parts of the system [1]. The ViewPoints framework has been used quite successfully and has been documented in the literature [2, 1, 4]. The question which is addressed here is how tool support can be constructed to effectively represent the loosely coupled approach: some local development within a ViewPoint is followed by interaction with related ViewPoints via consistency checks. The approach of distributed graph transformation supports the idea of loosely coupled ViewPoints as outlined above quite naturally. It realizes the separation between the independent development of single local ViewPoints and the configuration and connection of a set of related ViewPoints in a structured way. Distributed graph transformation which is based on the double-pushout approach to algebraic graph transformation is introduced formally in [6]. Using AGG [7] as a computing platform an adequate level of tool support can easily be constructed. The manipulation of representation schemes is expressed as graph transformation rules and the interaction and cooperation of distributed ViewPoints is adequately formulated as distributed graph transformation rules. As a result we gain tool support for ViewPoints and a corresponding formal presentation [5, 4]. As such it provides the possibility for formal analysis and most importantly a great deal of flexibility for integrating new ViewPoints. The ViewPoints framework was devised by A. Finkelstein et al. [2] to describe complex systems. An overview of other approaches related to multiple perspectives in software development can be found in [3]. In [1] a general overview wrt inconsistency management within the ViewPoints framework is given. In the chapter The ViewPoints Framework we introduce briefly our approach to ViewPoint-oriented software development. Based upon this we present tool support for our approach in the chapter The ViewPoint Tool. The ViewPoints Framework A ViewPoint is defined to be a locally managed object or agent which encapsulates partial knowledge about the system and its domain. It contains partial knowledge of the design process [2]. The knowledge is specified in a particular, suitable representation scheme. An entire system is described by a set of related, distributable ViewPoints which are loosely coupled. A single ViewPoint consists of five slots. The style slot contains a description of the scheme and notation which is used to describe the knowledge of the ViewPoint. The domain slot defines the area of concern addressed by the ViewPoint. The specification slot contains the actual specification of a particular part of the system which is described in the notation defined in the style slot. The fourth slot is called work plan and encapsulates the set of actions by which the specification can be built as well as a process model to guide application of these actions. Two classes of work plan actions are especially important: In-ViewPoint check actions and Inter-ViewPoint check actions are used for checking consistency within a single ViewPoint or between multiple ViewPoints, respectively. The last slot of a ViewPoint called work record contains the development history in terms of the actions given in the work plan slot. A ViewPoint template is a kind of ViewPoint type. It is described as a ViewPoint in which only the style slot and the work plan slot are specified, i.e. the other slots are empty. When creating a new ViewPoint, the developer has the opportunity to use an existing ViewPoint template instead of designing the entire ViewPoint from scratch. The ViewPoints framework is independent from any particular development method and actively encourages multiple representations. Software development methods and techniques are defined as sets of ViewPoint templates which encapsulate the notations provided as well as the rules how they are used. Integration of methods and views is realized by such rules referring to multiple ViewPoint templates. A more detailed description of the ViewPoints framework and its formalization by distributed graph transformation is given in [4]. In the next section we now present a brief overview of tool support.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Tool Support for ViewPoint-oriented Software Development

In this contribution we present tool support addressing the multiple perspectives problem. For organizing and integrating multiple stakeholders, the development processes and notations they use, and the partial specifications they produce we use the ViewPoints framework. A formalization of the ViewPoints framework based on distributed graph transformation builds the foundation of our tool. Intr...

متن کامل

Towards Integrating Multiple Perspectives by Distributed Graph Transformation

In order to support multiple perspectives in software development one needs a scheme which expresses explicitly all the views held by the various stakeholders like requirements engineer, software architect, client, user etc. The ViewPoints framework has been developed in the past as a conceptional framework for expressing such a multiple perspective setting in software development projects. In ...

متن کامل

CORBA and ODBMSs in Viewpoint Development Environment Architectures

Viewpoints are re ections of software systems from multiple perspectives. A number of consistency conditions apply to viewpoints and developers require a tool for each type of viewpoint. These tools need to support consistency management. Inter-viewpoint consistency can only be checked when tools are integrated into a viewpoint development environment. We brie y outline the functionality develo...

متن کامل

AJcFgraph - AspectJ Control Flow Graph Builder for Aspect-Oriented Software

The ever-growing usage of aspect-oriented development methodology in the field of software engineering requires tool support for both research environments and industry. So far, tool support for many activities in aspect-oriented software development has been proposed, to automate and facilitate their development. For instance, the AJaTS provides a transformation system to support aspect-orient...

متن کامل

Agent-oriented visual modeling and model validation for engineering distributed systems

Agent-Oriented methodologies that have been recently proposed for engineering distributed systems tend to adopt a model-based approach to software development, that is they devise a development process based on the definition of a specific set of models for each steps in the analysis and the software design phases. To be put into practice, this approach demands clear guidelines for building and...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000